home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 2 / CU Amiga Magazine's Super CD-ROM 02 (1996)(EMAP Images)(GB)[!][issue 1996-04].iso / magazine / amiga_e / ged-e / ged_guideref.rexx < prev    next >
OS/2 REXX Batch file  |  1994-11-03  |  2KB  |  83 lines

  1. /* $VER: 0.9, ©1994 BURGHARD Eric.                  */
  2. /*   Find reference of current word under GOLDED    */
  3.  
  4. options results                             /* enable return codes     */
  5.                                             /* not started by GoldEd ? */
  6. if (LEFT(ADDRESS(), 6) ~= "GOLDED") then address 'GOLDED.1'
  7. 'LOCK CURRENT QUIET'                        /* lock GUI, gain access   */
  8. if rc then exit
  9. options failat 6                            /* ignore warnings         */
  10. signal on syntax                            /* ensure clean exit       */
  11.  
  12. 'QUERY WORD VAR WORD'
  13. if word = '' then do
  14.     'REQUEST STATUS=" No word under cursor !"'
  15.     'UNLOCK'
  16.     exit
  17. end
  18.  
  19. if ~show('L','amigaguide.library') then call addlib('amigaguide.library',0,-30)
  20. xrfline = GetXRef("OpenWindow()")
  21. if xrfline = 10 then do
  22.    'REQUEST STATUS=" Loading Autodocs.xref... Please Wait"'
  23.    ok = LoadXRef(autodocs.xref)
  24.    'REQUEST STATUS=""'
  25. end
  26.  
  27. xref = 0
  28. symbol = ""
  29. node = ""
  30. line = 0
  31. function = word
  32. xrfline = GetXRef(function)
  33.  
  34. if xrfline = 10 then do
  35.   function = ''word'()'
  36.   xrfline = GetXRef(function)
  37.   if xrfline = 10 then do
  38.      function = word
  39.   end
  40.   else do
  41.       parse var xrfline '"' symbol '" "' node '" ' type ' ' line
  42.       xref = 1
  43.   end
  44. end
  45. else do
  46.     parse var xrfline '"' symbol '" "' node '" ' type ' ' line
  47.     xref = 1
  48. end
  49.  
  50. if ~show('P','AUTODOCS') then do
  51.   if xref = 0 then do
  52.     if exists('GUIDEDEVICE:AutoDocs/'function'') then cmd = 'Run >NIL: AmigaGuide 'function' PORTNAME AUTODOCS'
  53.     else do
  54.       'REQUEST STATUS="'word' is not referenced"'
  55.       'UNLOCK'
  56.       exit
  57.     end
  58.   end
  59.   else cmd = 'Run >NIL: AmigaGuide DOCUMENT 'function' PORTNAME AUTODOCS LINE 'line''
  60.   ADDRESS COMMAND cmd
  61. end
  62. else do
  63.   if xref = 0 then do
  64.     IF Exists('GUIDEDEVICE:AutoDocs/'function'') THEN cmd = 'Link 'function'/main 'line''
  65.     else do
  66.       'REQUEST STATUS="'word' is not referenced"'
  67.       'UNLOCK'
  68.       exit
  69.     end
  70.   end
  71.   else cmd = 'Link 'function' 'line''
  72.   ADDRESS AUTODOCS cmd
  73.   ADDRESS AUTODOCS 'windowtofront'
  74. end
  75.  
  76. 'UNLOCK'
  77. exit
  78.  
  79. syntax:
  80. say "Sorry, error line" SIGL ":" ERRORTEXT(RC) ":-("
  81. 'UNLOCK'
  82. exit
  83.